iT邦幫忙

2025 iThome 鐵人賽

DAY 1
0

前言

哈囉!很高興您點開這篇文章。如果您是 Node.js 開發者,並且想讓自己的程式碼更穩健、易於維護,那麼您來對地方了。在這場為期 30 天的技術挑戰賽中,我將一步步探索 TypeScript,並將它整合到 Node.js 的開發流程中。

從基礎的語法、環境建置,到常見的商業應用場景(如金流串接、檔案上傳),甚至是最後的雲端部署,我們將循序漸進地完成一些功能性的專案。這不僅僅是一場寫作馬拉松,更是一趟讓您的開發技能全面升級的旅程。

為什麼要用 TypeScript?

在進入主軸之前,您可能會想:「為什麼要花時間學 TypeScript?JavaScript 不是已經夠用了嗎?」

確實,JavaScript 靈活、入門門檻低,但當專案規模越來越大時,它的「彈性」也可能帶來維護上的挑戰。TypeScript 正是為了解決這個問題而生。它引入了靜態型別系統,讓您在寫程式的當下就能發現潛在的錯誤,大幅降低了除錯的成本。此外,透過明確的型別定義,程式碼的可讀性會大大提升,團隊協作也變得更加順暢。

簡而言之,TypeScript 就像是為您的程式碼加上了安全帶,讓您在高速開發的同時,也能確保品質。

系列文章藍圖與規劃

為了讓這趟旅程更有方向,我規劃了接下來 30 天的學習藍圖。它將引導我們從 TypeScript 的基礎知識,航向更複雜的後端應用場景,最終將我們的成果部署到雲端。

這份藍圖將分為以下幾個階段:

  1. Typescript 核心語法與基礎複習 : 在正式進入實戰前,我們會先複習並掌握 TypeScript 的核心觀念,建立「型別思維」。
    Day 3|TypeScript 核心語法 (1):型別系統、基本型別
    Day 4|TypeScript 核心語法 (2):Union、Enum
    Day 5|TypeScript 核心語法 (3):interface、type、泛型
  2. 基礎建置與環境設定:從零開始,帶您建立一個完善的 TypeScript + Node.js 開發環境,並完成一個簡單的 API 實作。
    Day 6|如何建立一個 TypeScript + Node.js 環境 (1):初始化專案
    Day 7|如何建立一個 TypeScript + Node.js 環境 (2):專案架構與資料庫設定
    Day 8|打造你的第一個 TodoList API:一步步實現 CRUD 功能
    Day 9|Render 雲端啟動:資料庫連線全攻略
    Day 10|部署啟程!從 Render 部署前置作業到 GitHub PR
    Day 11|一鍵上線!完整部署到 Render 的實戰流程
  3. 專案工具與進階功能:讓專案更專業!我們會加入程式碼格式化工具、API 請求驗證、使用者驗證,並探索如何快速上傳圖片到第三方服務。
    Day 12|程式碼自動排版神器:Prettier 實戰導入
    Day 13|一致的程式碼:ESLint 導入
    Day 14|API 驗證救星:用 Zod 驗證來檢查
    Day 15|API 安全升級:JWT 登入驗證全流程實作
    Day 16|Firebase Storage 初探:輕鬆搞定專案檔案上傳前置作業
    Day 17|Firebase Storage 實戰:用 Node.js + multer 上傳圖片到雲端
  4. 後端常見進階應用:這部分將涵蓋後端開發中的進階應用,如日誌、Migration 與 GitHub Actions 等。
    Day 18|console.log 退役啦!Node.js Pino 帶你升級專案 Log
    Day 19|專案升級必備:資料庫 Migration 實戰
    Day 20|從 0 到自動化:開啟你的第一個 GitHub Actions 旅程
  5. 雲端部署與維護:最後,我們會探索如何將專案部署到 AWS 雲端服務上,並了解一些基本的雲端概念。
    Day 21|AWS 初探 (1) – 什麼是雲端服務?
    Day 22|AWS 初探 (2) - 破關拿獎金・預算防護
    Day 23|從零啟動雲端主機:帶你開出第一台 AWS EC2!
    Day 24|從本地到雲端:把你的 Node.js 專案部署上 AWS EC2!
    Day 25|AWS RDS 入門:在雲端打造你的第一個資料庫服務
    Day 26|雲端串接實戰:Node.js 成功連上 AWS RDS!
    Day 27|AWS S3 實作檔案上傳:打造你的雲端檔案儲存中心
    Day 28|AWS VPC 入門:初探雲端世界的隱形網路
    Day 29|AWS IAM 入門:讓雲端安全運作的身分與權限管理

每一天,我們都會專注於一些的知識點,確保您可以循序漸進地吸收新知。

準備好和我一起挑戰了嗎?讓我們從明天開始,正式啟動這場 TypeScript 升級之旅吧!🚀🎉


下一篇
Day 2|為什麼要用 TypeScript 開發 Node.js? (價值、趨勢)
系列文
30 天,讓 TypeScript 把你的 Node.js 開發再升級30
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

1 則留言

1
Wolke
iT邦研究生 4 級 ‧ 2025-10-10 19:08:10

感謝 未知作者 的精彩分享!

JavaScript 生態系統真的很豐富,這樣的分享對開發者很有幫助。

實際的程式碼範例很有幫助,讓理論更容易理解。

遇到的問題和解決方案分享很實用,相信很多人都會遇到類似的情況。

也歡迎版主有空參考我的系列文「南桃AI重生記」:https://ithelp.ithome.com.tw/users/20046160/ironman/8311

如果覺得有幫助的話,也歡迎訂閱支持!

arvinyang iT邦新手 5 級 ‧ 2025-10-11 23:52:07 檢舉

謝謝 Wolke 的鼓勵!🙏
很開心這系列的內容有幫上忙,
你的「南桃AI重生記」系列我也有看,AI 主題很有啟發性!非常酷!
JavaScript 生態真的超龐大,能在鐵人賽上互相交流真不錯!

Wolke iT邦研究生 4 級 ‧ 2025-10-12 19:48:31 檢舉

/images/emoticon/emoticon08.gif

我要留言

立即登入留言